Several techniques exist for accessing information in computer databases, data files, or through application programs and utilities to identify a matching entry of an entered search item. These techniques have been used in a variety of contexts including spelling checkers, automatic word completion utilities, search and retrieval systems, etc. Systems that incorporate these techniques are often referred to as "find list" systems. In general, a find list system performs the steps of: (1) receiving a search-entry from a source; (2) searching a find list, based on the first one or two characters of the search-entry, to identify target-entries that were possibly intended, and (3) providing one or more (if any) of the identified target-entries to a user or process.
A problem associated with most find list systems is the burden imposed upon a user or process in the initial identification of an appropriate search-entry. This problem is magnified in systems that provide find list capabilities for complex words (i.e., world atlas searches, medical terminology searches, etc.). In a typical find list system, the first one or two characters of the search-entry are used as a key to identify possible target-entries in the find list. Thus, if the first few characters of the search-entry are incorrect, (especially the first character) then the target-entries identified may be meaningless. As an example, an attempt to locate information on Georgia, may fail to provide useful results if the source provides "Jorgia" as the search-entry. It should be apparent to the reader that such systems are virtually inoperative if the source is not able to provide an accurately spelled search-entry. Therefore, there is a need in the art for a find list system that can produce meaningful results when the search-entries are imperfect due to misspellings, and especially when the first few characters of the search-entries are misspelled.
Another problem associated with most find list systems occurs when the words of a multiple-word search-entry are transposed or swapped. For instance, if the search-entry "Chelan Lake" is provided, the intended target-entry in the find list, "Lake Chelan", will not be retrieved. Therefore, there is a need in the art for a find list system that can produce meaningful results when the words of a multiple-word search-entry are imperfect due to word transpositions.
Therefore, there may be seen a need in the art for a find list system and method that provides meaningful results for imperfect search-entries.